<?php

    Class GolesDAO
    {

        private static function getInstance($rs)
        {
            $gol = new Gol();

            $gol->idGol      = $rs->fields["idgol"];
            $gol->idJugador  = $rs->fields["idjugador"];
            $gol->idPartido  = $rs->fields["idpartido"];
            $gol->idEquipo   = $rs->fields["idequipo"];
            $gol->minuto     = $rs->fields["minuto"];
            $gol->tiempo     = $rs->fields["tiempo"];
            $gol->esAutogol  = $rs->fields["esautogol"];

            return $gol;
        }

        static function add($gol)
        {
            print_r($gol);
            $db = MyConnection::$db;

            $query = $db->Prepare("INSERT INTO goles (idJugador, idPartido, idEquipo, minuto, tiempo, esAutogol) VALUES (?,?,?,?,?,?)");
            return $db->Execute($query, array($gol->idJugador, $gol->idPartido, $gol->idEquipo, $gol->minuto, $gol->tiempo, $gol->esAutogol));

        }

        static function getById($id)
        {
            $db = MyConnection::$db;

            $rs = $db->Execute("SELECT * FROM goles WHERE idGol = $id");

            if (!$rs->EOF)
            {
                return self::getInstance($rs);
            }
        }

        static function getByIdPartido($id)
        {
            $db = MyConnection::$db;

            $rs = $db->Execute("SELECT * FROM goles WHERE idpartido = $id");

            $all = array();
            while (!$rs->EOF)
            {
                $all[] = self::getInstance($rs);
                $rs->MoveNext();
            }

            return $all;
        }

        static function getByIdJugador($id)
        {
            $db = MyConnection::$db;

            $rs = $db->Execute("SELECT * FROM goles WHERE idjugador = $id");

            $all = array();
            while (!$rs->EOF)
            {
                $all[] = self::getInstance($rs);
                $rs->MoveNext();
            }

            return $all;
        }

        static function getByIdEquipo($id)
        {
            $db = MyConnection::$db;

            $rs = $db->Execute("SELECT * FROM goles WHERE idequipo = $id");

            $all = array();
            while (!$rs->EOF)
            {
                $all[] = self::getInstance($rs);
                $rs->MoveNext();
            }

            return $all;
        }

        static function getAll()
        {
            $db = MyConnection::$db;

            $rs = $db->Execute("SELECT * FROM goles");

            $all = array();
            while (!$rs->EOF)
            {
                $all[] = self::getInstance($rs);
                $rs->MoveNext();
            }

            return $all;
        }

        static function getEntrantes($idEquipo)
        {
			$db = MyConnection::$db;

            $rs = $db->Execute("SELECT * FROM goles WHERE idpartido IN (SELECT idPartido FROM partidos WHERE idEquipoVisita = $idEquipo OR idEquipoLocal = $idEquipo)
								AND idequipo != $idEquipo");

            $all = array();
            while (!$rs->EOF)
            {
                $all[] = self::getInstance($rs);
                $rs->MoveNext();
            }

            return $all;
        }
    }

?>